﻿<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>1.1.控制器常用变量</title>
    <script type="text/javascript" src="../Content/highlighter/scripts/shCore.js"></script>
    <script type="text/javascript" src="../Content/highlighter/scripts/shBrushCSharp.js"></script>
    <script type="text/javascript" src="../Content/highlighter/scripts/shBrushXml.js"></script>
    <link type="text/css" rel="stylesheet" href="../Content/highlighter/styles/shCoreDefault.css"/>
    <script type="text/javascript">SyntaxHighlighter.all();</script>
</head>
<body>
    <h3>1.get请求参数</h3>
    <pre class="brush: csharp;">
		public class IndexController: Controller
		{
			public void Index()
			{
                //get变量存储了从url获取的变量以及get与post获取的变量。类似于asp.net中的request["name"];
				string name = this._get["name"];
			}
		}
    </pre>
    <h3>
        2.tw页面输出
    </h3>
    <pre class="brush: csharp;">
        public class IndexController: Controller
		{
			public void Index()
			{
                //tw变量继承自TextWriter接口，用于向浏览器输出字符。
				this._tw.Write("hello!");
                //通常情况下使用Write()函数
                Write("hello!");
			}
		}
    </pre>
    <h3>
        3._subdomain二级域名
    </h3>
    <pre class="brush: csharp;">
        public class IndexController: Controller
		{
			public void Index()
			{
                int city=0;
                //subdomain存储了二级域名，默认情况下为"www"
				switch(this._subdomain)
                {
                    //如果是beijing.xxx.com
                    case "beijing":city=1;break;
                    //如果是henan.xxx.com
                    case "henan":city=2;break;
                    //如果是shanghai.xxx.com
                    case "shanghai":city=3;break;
                    //....
                    default:city=0;break;
                }
                //然后根据不同的城市显示不同的内容。此字段用于做分站模式。
			}
		}
    </pre>
    <h3>
        3._methodType请求类型
    </h3>
    <pre class="brush: csharp;">
        public enum MethodType
        {
            NONE = 0,
            POST = 1,
            GET = 2,
            PUT = 3,
            DELETE = 4,
            AJAX = 5
        }
        public class IndexController: Controller
		{
			public void Index()
			{
                //判断请求类型。
				if(this._methodType==NFinal.MethodType.AJAX)
                {
                    Write("ajax请求");
                }
                else
                {
                    Write("请求出错");
                }
			}
		}
    </pre>
    <h3>
        3.isMobile判断不同的设备
    </h3>
    <pre class="brush: csharp;">
        public class IndexController: Controller
		{
			public void Index()
			{
                //判断请求类型。
				if(this.isMobile)
                {
                    Write("您在使用手机进行浏览");
                }
                else
                {
                    Write("您在使用PC进行浏览");
                }
			}
		}
    </pre>
    <h3>
        3._context对象,用于其它情况下使用（尽量不要使用，一旦使用了就不能利用Web层进行静态页面的生成了。）
    </h3>
    <pre class="brush: csharp;">
        public class IndexController: Controller
		{
			public void Index()
			{
                //输出
                this._context.Response.Write("Hello!");
			}
		}
    </pre>
</body>
</html>